package com.cmc.cloud.cmclink.doc.vo.multimodaltransport.containermanifest;

import javax.validation.Valid;

import org.hibernate.validator.constraints.Length;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;

/**
 * 集装箱清单导入列表信息 Request VO
 *
 * @author codegen
 */
@Schema(description = "管理后台 - 集装箱清单导入列表信息 Request VO")
@Data
@AllArgsConstructor
@NoArgsConstructor
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Valid
public class ContainerManifestImportCnshaReqVO extends ContainerManifestImportBaseReqVO {
    @Schema(description = "箱号", requiredMode = Schema.RequiredMode.REQUIRED)
    @Length(max = 12, message = "{ContainerManifestImportReqVO.cntrno.length}")
    private String cntrNo;

    @Schema(description = "箱型", example = "2")
    @Length(max = 50, message = "{ContainerManifestImportReqVO.cntrtype.length}")
    private String cntrType;

    @Schema(description = "箱尺寸")
    @Length(max = 50, message = "{ContainerManifestImportReqVO.cntrsize.length}")
    private String cntrSize;

    @Schema(description = "箱状态")
    @Length(max = 1, message = "{ContainerManifestImportReqVO.cntrStatus.length}")
    private String cntrStatus;

    @Schema(description = "箱主")
    @Length(max = 50, message = "{ContainerManifestImportReqVO.cntrOwner.length}")
    private String cntrOwner;

    @Schema(description = "重量")
    @Length(max = 50, message = "{ContainerManifestImportReqVO.weight.length}")
    private String weight;

    @Schema(description = "分重量")
    @Length(max = 50, message = "{ContainerManifestImportReqVO.splitWeight.length}")
    private String splitWeight;

    @Schema(description = "危级")
    @Length(max = 50, message = "{ContainerManifestImportReqVO.imoClass.length}")
    private String imoClass;

    @Schema(description = "干线船名航次")
    @Length(max = 50, message = "{ContainerManifestImportReqVO.mainlineVessel.length}")
    private String mainlineVessel;

    @Schema(description = "目的港")
    @Length(max = 50, message = "{ContainerManifestImportReqVO.podCode.length}")
    private String podCode;

    @Schema(description = "干码头")
    @Length(max = 50, message = "{ContainerManifestImportReqVO.dryTerminal.length}")
    private String dryTerminal;

    @Schema(description = "支码头")
    @Length(max = 50, message = "{ContainerManifestImportReqVO.feederTerminal.length}")
    private String feederTerminal;

    @Schema(description = "报关船名航次")
    @Length(max = 50, message = "{ContainerManifestImportReqVO.customVessel.length}")
    private String customVessel;

    @Schema(description = "超重")
    @Length(max = 50, message = "{ContainerManifestImportReqVO.overWeight.length}")
    private String overWeight;
}
